Modular, highly interconnected computer network systems offer the ability to exchange data among individual nodes in the network and to share hardware resources. Due to the large amount of data movement in such a system, communication traffic among the nodes can become congested. Some methods for reducing congestion have been proposed. One, the Scalable Coherent Interface increases throughput through the network by sending data in self-contained packets which have the needed address, command and data. That way, processors don't have to wait for each message to travel the length of the network before sending the next one. The Scalable Coherent Interface (SCI) is an IEEE Standard (IEEE Std 1596-1992). [David B. Gustavson, The Scalable Coherent Interface and Related Standards Projects, IEEE Micro, February 1992, p. 10].
The Scalable Coherent Interface is a single ring network which can be implemented on a range of systems, from smaller personal computer based networks to huge, interconnected network systems. Since it is a single ring system, however, the network is not tolerant to failures in the network hardware. For example, although the Scalable Coherent Interface has the feature that a blocked node only blocks packets destined to that node while not blocking packets destined elsewhere, this protocol relies on having a fully connected ring network. Breaking the ring in order to add, to remove, or to swap a node interrupts the Scalable Coherent Interface.
On the other hand, the Fiber Distributed Data Interface (FDDI) provides fault tolerance by using a dual-ring configuration. One of these rings is used for the data traffic. The secondary ring can be used to fold the communications ring around a faulty network node. This allows the network to remain functional without needing to physically replace the faulty node.
Even on a dual ring network such as FDDI, the process of testing faulty nodes in the network can be troublesome. As long as the faulty node remains on the network, that node can cause damage both to data kept on network storage devices and to the communication flowing through the node on the network.
There is a need in the art for a ring-based computer network which can increase the transfer rate of data. At the same time, there is a need for a computer network that can expand in a cost-efficient manner and one which is highly fault tolerant. This network should allow faulty nodes to be partially disabled so that the network is not harmed by such faults and so that the nodes can be tested and debugged without needing to remove them from the network. There should also be the ability to add, remove, or swap nodes while the rest of the network can continue to function normally.